home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / java / lang / Class$MethodArray.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  1.6 KB  |  95 lines

  1. package java.lang;
  2.  
  3. import java.lang.reflect.Method;
  4. import java.util.Arrays;
  5.  
  6. class Class$MethodArray {
  7.    private Method[] methods = new Method[20];
  8.    private int length = 0;
  9.  
  10.    void add(Method var1) {
  11.       if (this.length == this.methods.length) {
  12.          this.methods = (Method[])Arrays.copyOf(this.methods, 2 * this.methods.length);
  13.       }
  14.  
  15.       this.methods[this.length++] = var1;
  16.    }
  17.  
  18.    void addAll(Method[] var1) {
  19.       for(int var2 = 0; var2 < var1.length; ++var2) {
  20.          this.add(var1[var2]);
  21.       }
  22.  
  23.    }
  24.  
  25.    void addAll(Class$MethodArray var1) {
  26.       for(int var2 = 0; var2 < var1.length(); ++var2) {
  27.          this.add(var1.get(var2));
  28.       }
  29.  
  30.    }
  31.  
  32.    void addIfNotPresent(Method var1) {
  33.       for(int var2 = 0; var2 < this.length; ++var2) {
  34.          Method var3 = this.methods[var2];
  35.          if (var3 == var1 || var3 != null && var3.equals(var1)) {
  36.             return;
  37.          }
  38.       }
  39.  
  40.       this.add(var1);
  41.    }
  42.  
  43.    void addAllIfNotPresent(Class$MethodArray var1) {
  44.       for(int var2 = 0; var2 < var1.length(); ++var2) {
  45.          Method var3 = var1.get(var2);
  46.          if (var3 != null) {
  47.             this.addIfNotPresent(var3);
  48.          }
  49.       }
  50.  
  51.    }
  52.  
  53.    int length() {
  54.       return this.length;
  55.    }
  56.  
  57.    Method get(int var1) {
  58.       return this.methods[var1];
  59.    }
  60.  
  61.    void removeByNameAndSignature(Method var1) {
  62.       for(int var2 = 0; var2 < this.length; ++var2) {
  63.          Method var3 = this.methods[var2];
  64.          if (var3 != null && var3.getReturnType() == var1.getReturnType() && var3.getName() == var1.getName() && Class.access$100(var3.getParameterTypes(), var1.getParameterTypes())) {
  65.             this.methods[var2] = null;
  66.          }
  67.       }
  68.  
  69.    }
  70.  
  71.    void compactAndTrim() {
  72.       int var1 = 0;
  73.  
  74.       for(int var2 = 0; var2 < this.length; ++var2) {
  75.          Method var3 = this.methods[var2];
  76.          if (var3 != null) {
  77.             if (var2 != var1) {
  78.                this.methods[var1] = var3;
  79.             }
  80.  
  81.             ++var1;
  82.          }
  83.       }
  84.  
  85.       if (var1 != this.methods.length) {
  86.          this.methods = (Method[])Arrays.copyOf(this.methods, var1);
  87.       }
  88.  
  89.    }
  90.  
  91.    Method[] getArray() {
  92.       return this.methods;
  93.    }
  94. }
  95.